﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace CivLib
{
  /// <summary>
  /// A structure that contains a point in 2d space expressed
  /// as doubles.
  /// </summary>
  public struct CivPoint2D
  {
    /// <summary>x coordinate</summary>
    public double x;
    /// <summary>y coordinate</summary>
    public double y;

    /// <summary>
    /// Basic constructor for CivPoint2D
    /// </summary>
    /// <param name="a_x">x value</param>
    /// <param name="a_y">y value</param>
    public CivPoint2D(double a_x, double a_y)
    {
      x = a_x;
      y = a_y;
    }
  }

  /// <summary>
  /// A structure that contains a point in 3d space expressed
  /// as doubles.
  /// </summary>
  public struct CivPoint3D
  {
    /// <summary>x coordinate</summary>
    public double x;
    /// <summary>y coordinate</summary>
    public double y;
    /// <summary>z coordinate</summary>
    public double z;

    /// <summary>
    /// Constructor for a CivPoint3D
    /// </summary>
    /// <param name="a_x">x coordinate</param>
    /// <param name="a_y">y coordinate</param>
    /// <param name="a_z">z coordinate</param>
    public CivPoint3D(double a_x, double a_y, double a_z)
    {
      x = a_x;
      y = a_y;
      z = a_z;
    }
  }
}
